package logic

import (
	"GuidingSystem/dao"
	"GuidingSystem/global"
	"GuidingSystem/middlewares"
	"GuidingSystem/model/reply"
	"github.com/XYYSWK/Rutils/pkg/app/errcode"
	"github.com/gin-gonic/gin"
)

type attraction struct{}

func (attraction) GetAttractionsByCemeteryID(ctx *gin.Context, cemeteryID int64) ([]*reply.Attraction, errcode.Err) {
	result, err := dao.DB.GetAttractionsByCemeteryID(cemeteryID)
	if err != nil {
		global.Logger.Error(err.Error(), middlewares.ErrLogMsg(ctx)...)
		return nil, errcode.ErrServer
	}
	return result, nil
}

//func (attraction) CreateAttraction(ctx *gin.Context, params *request.CreateAttraction) (*reply.Attraction, errcode.Err) {
//	attractionInfo := &reply.Attraction{
//		Name:       params.Name,
//		Describe:   params.Describe,
//		CemeteryID: params.CemeteryID,
//	}
//	cemeteryInfo, err := dao.DB.GetCemeteryByID(params.CemeteryID)
//	if err != nil {
//		if errors.Is(err, gorm.ErrRecordNotFound) {
//			global.Logger.Error(err.Error(), middlewares.ErrLogMsg(ctx)...)
//			return nil, errcodes.CemeteryNotFound
//		}
//		global.Logger.Error(err.Error(), middlewares.ErrLogMsg(ctx)...)
//		return nil, errcode.ErrServer
//	}
//	result, err := dao.DB.CreateAttraction(attractionInfo)
//	if err != nil {
//		global.Logger.Error(err.Error(), middlewares.ErrLogMsg(ctx)...)
//		return nil, errcode.ErrServer
//	}
//	cemeteryInfo.Attractions
//	err = dao.DB.UpdateCemetery(cemeteryInfo)
//	if err != nil {
//		global.Logger.Error(err.Error(), middlewares.ErrLogMsg(ctx)...)
//		return nil, errcode.ErrServer
//	}
//	return result, nil
//}
